<template>
    <el-container>
        <el-card style="width: 100%; margin: 10px">
            <el-descriptions title="概念介绍" :column="1">
                <el-descriptions-item label="头参透传">
                    将指定请求头参数在整个链路中进行传递就是头参透传功能，可以满足一些如token、特殊header在链路中传递给各个服务使用。
                </el-descriptions-item>
                <el-descriptions-item label="传递要求">
                    请求头参数必须以 <el-tag type="primary">gk-header-transfer-</el-tag> 开头，如：gk-header-transfer-token=xxxxx, gk-header-transfer-env-name=prod
                </el-descriptions-item>
            </el-descriptions>

            <h4 class="desc-title">示意图</h4>
            <img src="@/assets/images/header-transfer.png" width="1000" height="300" style="overflow:hidden"/>

            <h4 class="desc-title">获取请求头</h4>
            <div style="font-size: 12px;">
                <p>1.在入口方法参数内 <span style="color: orange;">@RequestHeader(value = "gk-header-transfer-env", required = false) String env</span></p>
                <p>2.方法内可以用 <span style="color: orange;">HttpServletRequest.getHeader("gk-header-transfer-env")</span></p>
            </div>

            <h4 class="desc-title">使用场景示例</h4>
            <div style="font-size: 12px;">
                <p>1.在分布式链路追踪系统中，遵循Open Tracing规范，需要有个traceId在链路中传递</p>
                <p>2.当被调方需要对调用方的身份进行验证时，需要传递Token</p>
                <p>3.根据实际业务有一些高级场景需要在链路中传递某些业务值</p>
            </div>
        </el-card>
    </el-container>
</template>

<script>
export default {

}
</script>

<style>

</style>